1. Field of the Invention
This invention relates generally to nonvolatile memory devices and, more particularly, to erasing portions of the nonvolatile memory devices.
2. Description of Related Art
Nonvolatile memory devices are provided in many electronics devices such as personal computers, personal digital assistants, digital cameras, and digital music players. Nonvolatile memory devices, such as flash memory devices and other Electrically Erasable Programmable Read Only Memories (EEPROM) have many advantages over other types of data storage devices, both volatile and nonvolatile. Unlike magnetic and optical devices, such as hard-disk, Compact Discs (CD), and Digital Versatile Discs (DVD), nonvolatile memory devices include no moving parts. Unlike other nonvolatile semiconductor memories, such as Read Only Memories (ROM), nonvolatile memory devices may be reprogrammed. Finally, unlike other semiconductor memories, such as Random Access Memories (RAM) and Dynamic Random Access Memories (DRAM), nonvolatile memory devices retain their data values even after power is removed from the device.
However, nonvolatile memories, such as flash memories, include many characteristics that are different from other semiconductor memories. One significant difference is that the individual bit cells in flash memory devices, once programmed, cannot be directly programmed to a new value. Instead, once a bit cell is programmed, it must be erased before it can be programmed again. Conventionally, a bit is defined as a “1” when it is erased and a “0” when it is programmed. In addition, flash memories may be programmed as 8-bit bytes or 16-bit words. Thus, a byte/word is originally erased to all ones then programmed to the intended value, which is likely a combination of ones and zeros. To reprogram the byte/word to a new value, it must first be erased to all ones, and then reprogrammed to the new value. Furthermore, flash memories generally cannot be erased on a byte/word basis. Rather, all bits within a relatively large block are erased at the same time.
This block erase operation may stall other operations in the flash memory, such as read and write operations. In addition, it may be desirable to retain some information in a block while removing other information. Thus, before a block is erased, the retainable information may need to be copied to a new block, before the block is erased. With these limitations, many flash memory systems attempt to perform block erase operations at initialization or power down. However, if block erase operations are performed during initialization, the flash memory device may be unavailable for long periods during the initialization, which may cause a significantly noticeable adverse impact on performance. Block erase operations performed during power down can also pose significant problems. Many flash memory systems use transient power, wherein the system cycles between power on and power off to the flash memory devices quite frequently in an attempt to save power. In these systems, it may not always be predictable when power is going to be removed from a flash memory device or flash memory card. If power is removed from a flash memory device while a block is being erased, the block may not be fully erased, even though the flash memory system “believes” it has been erased. Thus, when the block is programmed again, the data may not be written correctly because the block was not fully erased.
There is a need for a method and apparatus that provides a means for performing block erases in a background mode to reduce performance impacts and provide for developing a time period wherein the flash memory system may be confident that blocks are properly erased even in a transient power system.